Skip to main content

Linux Deployment

This guide provides step-by-step instructions to deploy SyncNow on a Linux machine.

SyncNow runs as a systemd service and requires a dedicated system user (syncnow). The installation process requires sudo privileges.

Prerequisites

  • Root or sudo privileges are required to install and manage the service.

  • Ensure unzip is installed on your system.

  • We use the ICU (International Components for Unicode) library, please install it with this command

    Here’s how you install ICU (libicu) on different Linux distributions:

    Ubuntu / Debian

    Use apt:

    sudo apt update
    sudo apt install -y libicu-dev
    

    Red Hat (RHEL) / CentOS / Rocky Linux

    Use dnf or yum depending on your version:

    sudo dnf install -y libicu  # For RHEL 8, 9 and newer
    sudo yum install -y libicu  # For RHEL 7 and older
    

    Verify Installation

    After installation, check if ICU is installed by running:

    ldd $(which dotnet) | grep icu
    
  • If using PostgreSQL or SQL Server, ensure the database is set up beforehand.

Extract the Installation Package

Extract the SyncNow compressed archive:

sudo unzip "~/Linux64-SyncNow-<version>.zip" -d /opt/syncnow

Installation

Systemd Service Setup

During the installation, SyncNow will create a systemd service that runs under the syncnow user. This user will be created by the installation script if it does not already exist.

The service configuration file will be located at /etc/systemd/system/syncnow.service and will include the necessary settings to run SyncNow as a daemon.

To manage the SyncNow service, you can use the following commands:

  • Start the service:

    sudo systemctl start syncnow
    
  • Stop the service:

    sudo systemctl stop syncnow
    
  • Restart the service:

    sudo systemctl restart syncnow
    
  • Enable the service to start on boot:

    sudo systemctl enable syncnow
    
  • Check the status of the service:

    sudo systemctl status syncnow
    

Step 1: Database Setup

SyncNow supports SQLite (default), PostgreSQL, or SQL Server (MSSQL).

For the Internal Database (SQLite)

No additional configuration is required.

For SQL Server or PostgreSQL

  1. Create a database user for SyncNow.
  2. Create a database and grant full ownership to the SyncNow user.

Step 2: Install SyncNow

  1. Change to the setup directory:

    mkdir /opt/syncnow
    cd /opt/syncnow
    
  2. Grant execution permissions and install SyncNow:

    chmod +x Install.sh
    sudo ./Install.sh Install
    

    To install the environment for testing with port 5050, use the following command:

    sudo ./Install.sh Install Test
    
  3. Accept the license agreement by pressing Y when prompted.

  4. If using PostgreSQL or SQL Server, configure the database settings in /opt/SyncNow/appsettings.json:

    • Set the DatabaseType (options: SQLite, SQLServer, PostgreSQL).
    • Configure DatabaseHost, DatabaseName, DatabasePort, DatabaseUser, and DatabasePassword.
    • The password will be encrypted after the first load.
    • If using TLS/SSL encryption, set Encrypt to True.
    • If using Windows Authentication (MSSQL only), set WindowsAuth to True (password is not needed in this case).
  5. Start the service:

    sudo systemctl start syncnow
    
  6. Enable SyncNow to start on boot:

    sudo systemctl enable syncnow
    

Step 3: Verify Installation

  1. Open /opt/SyncNow/WebApp/app.json and enter the SyncNow hostname or IP address.

  2. Access SyncNow via:

    http://<server-ip>:5030
    
  3. Default login credentials:

    • Username: admin@SyncNow.Local
    • Password: Admin (Change this immediately after login)
  4. Enter your license key in the SyncNow application settings.


Uninstall

  1. Ensure you have admin permissions.

  2. Run the following command to remove SyncNow:

    sudo ./Install.sh Remove
    
  3. SyncNow and its systemd service will be removed.

  4. If needed, delete the installation folder manually:

    sudo rm -rf /opt/SyncNow
    

Upgrade

SyncNow upgrades the database automatically during this process.

Upgrade Steps:

  1. Ensure you have admin permissions.

  2. Extract the new SyncNow archive to a temporary directory.

  3. Run the upgrade command:

    sudo ./Install.sh Upgrade /opt/SyncNow
    
  4. Confirm the backup prompt (Y).

  5. The upgrade process will update SyncNow while preserving essential configuration files.